import Mock from 'mockjs'

// 封装管理地址信息
let {
    inputInfo,
    deleteinputInfo,
    login,
    items
} = {
    inputInfo: '/inputInfo',  //用户信息请求 地址暂时不对
    deleteinputInfo: '/deleteinputInfo',  //删除某个信息,需要id值 地址暂时不对
    login: '/login', //登录请求接口
    items: '/items'  //不同权限的信息接口界面
}

let mocks = Mock.mock(  //具体的请求
    inputInfo, //这个是地址
    'get',
    {
        code: 200,
        'data|20': [
            {
                'id|+1': 10,
                'key|+1': 10,
                Name: '@cname',
                Age: '@integer(18,60)',
                Address: '@city'
            }
        ]
    }
)
let delmock = Mock.mock(  //具体的请求
    deleteinputInfo, //这个是地址
    'delete',
    {
        code: 200,
        msg: '删除成功'
    }
)

let loginpost = Mock.mock(  //具体的请求
    login, //这个是地址
    'post',
    (e) => {
        let { username, password } = JSON.parse(e.body)
        if (username == 'admin' && password == '123123') {
            //这是管理员root的账号
            return {
                code: 200,
                msg: 'fieuh091259joiwef', // 这是管理员权限
            }
        } else {
            //其他的发送请求都是user账号
            return {
                code: 200,
                msg: 'noi3o3223iojo2ith', //这是用户普通权限(应该是多个但是在这里只模拟一个)
            }
        }
    }
)
let itemsget = Mock.mock(
    items,
    'post',
    (e) => {
        // console.log(e.body);
        let { token } = JSON.parse(e.body)
        if (token == 'fieuh091259joiwef') {
            // 管理员数据
            return {
                code: 200,
                msg: '登陆成功',
                data:[
                    {
                        label: '首页', key: '1', icon: 'HomeOutlined', children: [
                            { label: '首页', key: '/home', icon: 'HomeOutlined' }
                        ]
                    },
                    {
                        label: '通用', key: '2', icon: 'AppstoreAddOutlined', children: [
                            { label: '数据', key: '/btn', icon: 'AlertOutlined' },
                            { label: '图标', key: '/icon', icon: 'PaperClipOutlined' },
                            {
                                label: '其他', key: '2.1', icon: 'BarsOutlined', children: [
                                    { label: '表格', key: '/table', icon: 'EditOutlined' },
                                    { label: '富文本', key: '/text', icon: 'FontSizeOutlined' }
                                ]
                            }
                        ]
                    },
                    {
                        label: '通用', key: '3', icon: 'NotificationOutlined', children: [
                            { label: '通用', key: '/about', icon: 'NotificationOutlined' }
                        ]
                    }
                ]
            }
        } else if (token == 'noi3o3223iojo2ith') {
            //普通用户数据
            return {
                code: 200,
                msg: '登陆成功',
                data:[
                    {
                        label: '首页', key: '1', icon: 'HomeOutlined', children: [
                            { label: '首页', key: '/home', icon: 'HomeOutlined' }
                        ]
                    },
                    {
                        label: '通用', key: '2', icon: 'AppstoreAddOutlined', children: [
                            { label: '数据', key: '/btn', icon: 'AlertOutlined' },
                            { label: '富文本', key: '/text', icon: 'FontSizeOutlined'  }
                        ]
                    },
                    {
                        label: '通用', key: '3', icon: 'NotificationOutlined', children: [
                            { label: '通用', key: '/about', icon: 'NotificationOutlined' }
                        ]
                    }
                ]
            }
        } else {
            //无效token
            return {
                code: 400,
                mgs: '用户信息错误,请登出后重新登录'
            }
        }
    }
)

export default { mocks, delmock, loginpost, itemsget }
